﻿using DeMeng.Models.Models.UserInfo;
using DeMeng.Models.PageModel;
using DeMeng.Models.ViewModels.UserInfo;
using DeMeng.Services.BaseServices;
using System.Threading.Tasks;
using DeMeng.Models.Models;

namespace DeMeng.Services.Domain
{
    public interface IUserInfoServices : IBaseServices<UserInfoEntity>
    {
        Task<LoginResultViewModel> Login(LoginQueryModel model);
 

        Task<UserInfoResultViewModel> GetUserInfo();

        Task<bool> UpdatePassword(UpdatePasswordQueryModel query);


        Task<bool> FindPassword(FindPasswordQueryModel model);

        Task<bool> ResetPassword(ResetPasswordQueryModel model);

        Task<PageResultModel<UserInfoEntity>> FindList(UserInfoListQueryModel query);



        Task<bool> UpdateUserInfo(UpdateUserInfoQueryModel query);


        bool Save(UserInfoEntity model);

        /// <summary>
        /// 用户注册
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        Task<bool> Register(RegisterQueryModel model);

         
        /// <summary>
        /// 设置禁用
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        Task<bool> SetDisable(OperateQueryModel query);
       
    }
}
